Finger biometric sensor providing coarse matching of ridge flow data using histograms and related methods

ABSTRACT

An electronic device may include a finger biometric sensor and a processor cooperating with the finger biometric sensor. The processor may be capable of determining enrollment finger ridge flow angles over an enrollment area for an enrolled finger, and determining match finger ridge flow angles over a match area for a to-be matched finger. The processor may also be capable of determining at least one likely match sub-area of the enrollment area by dividing the enrollment area into a plurality of regions and determining a respective enrollment ridge flow histogram for each region of the enrollment area, and determining whether the to-be matched finger matches the enrolled finger based upon the at least one likely match sub-area.

BACKGROUND

Fingerprint sensing and matching is a reliable and widely used techniquefor personal identification or verification. In particular, a commonapproach to fingerprint identification involves scanning a samplefingerprint or an image thereof and storing the image and/or uniquecharacteristics of the fingerprint image. The characteristics of asample fingerprint may be compared to information for reference orenrolled fingerprints already in a database to determine properidentification of a person, such as for verification purposes.

Traditional approaches for fingerprint matching generally rely onminutia, which are point features corresponding to ridge ends andbifurcations. However, minutia-based matchers may have certaindrawbacks. First, minutia extraction may be difficult in images of poorquality. Second, a minimum fingerprint area may be needed to extract areasonable number of minutiae. Thus, minutia-based matchers may beunsuitable in applications where poor quality images or small sensorsare involved. Using fingerprint pattern features, instead of minutiae,for matching may potentially mitigate both of these drawbacks. Examplesof fingerprint pattern features are image pixel values, ridge flow, andridge frequency.

Ridge flow information has been used in a variety of stages infingerprint recognition. It is commonly extracted through tessellatingthe fingerprint image into small square blocks or cells and estimatingthe dominant ridge flow within each block. The resulting map is referredto as the ridge flow map.

Despite the existence of such ridge flow techniques, they may notprovide desired matching speed for some implementations.

SUMMARY

An electronic device may include a finger biometric sensor and aprocessor cooperating with the finger biometric sensor. The processormay be capable of determining enrollment finger ridge flow angles overan enrollment area for an enrolled finger, and determining match fingerridge flow angles over a match area for a to-be matched finger. Theprocessor may also be capable of determining at least one likely matchsub-area of the enrollment area by dividing the enrollment area into aplurality of regions and determining a respective enrollment ridge flowhistogram for each region of the enrollment area, and determiningwhether the to-be matched finger matches the enrolled finger based uponthe at least one likely match sub-area.

More particularly, the processor may be capable of determining whetherthe to-be matched finger matches the enrolled finger based uponcomparing match finger ridge flow angles to enrolled finger ridge flowangles for the at least one likely match sub-area. Furthermore, theprocessor may be capable of dividing the enrollment area into aplurality of at least partially overlapping regions.

By way of example, the processor may be capable of determining the atleast one likely match sub-area by at least dividing the match area intoa plurality of regions, and determining a respective match ridge flowhistogram for each region of the match area. Moreover, the processor maybe capable of determining the at least one likely match sub-area by atleast comparing a plurality of enrollment ridge flow histograms with aplurality of match ridge flow histograms. The processor may be capableof determining the at least one likely match sub-area by at leastcomparing the plurality of enrollment ridge flow histograms with theplurality of match ridge flow histograms at a plurality of relativerotational angles. Also, the processor may be capable of determining theat least one likely match sub-area by at least generating a score basedupon comparing the plurality of enrollment ridge flow histograms withthe plurality of match ridge flow histograms, and comparing the score toa threshold.

In an example embodiment, the match area may be smaller than theenrollment area. The electronic device may further include a memorycoupled to the processor and capable of storing the enrollment fingerridge flow angles. Furthermore, the electronic device may also include ahousing carrying the finger biometric sensor and the processor, and awireless transceiver carried by the housing.

A related finger matching method may include determining enrollmentfinger ridge flow angles over an enrollment area for an enrolled finger,and determining match finger ridge flow angles over a match area for ato-be matched finger using a finger biometric sensor. The method mayfurther include determining at least one likely match sub-area of theenrollment area by dividing the enrollment area into a plurality ofregions and determining a respective enrollment ridge flow histogram foreach region of the enrollment area, and determining whether the to-bematched finger matches the enrolled finger based upon the at least onelikely match sub-area.

A related non-transitory computer-readable medium may havecomputer-executable instructions for causing a computer to perform stepsincluding determining enrollment finger ridge flow angles over anenrollment area for an enrolled finger, and determining match fingerridge flow angles over a match area for a to-be matched finger basedupon a finger biometric sensor. The steps may further includedetermining at least one likely match sub-area of the enrollment area bydividing the enrollment area into a plurality of regions and determininga respective enrollment ridge flow histogram for each region of theenrollment area, and determining whether the to-be matched fingermatches the enrolled finger based upon the at least one likely matchsub-area.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is schematic block diagram of an electronic device including afinger biometric sensor providing coarse matching of ridge flow datausing histograms in accordance with an example embodiment.

FIG. 2 is a flow diagram illustrating finger biometric sensing methodaspects associated with the finger biometric sensor of FIG. 1.

FIGS. 3 and 4 are schematic diagrams respectively illustrating histogramgeneration for a relatively large sensor area and for smaller sub-areasor regions of the sensor area, which are used in the method of FIG. 2.

FIG. 5 is a schematic block diagram of an example embodiment of thefinger biometric sensor of FIG. 1.

FIG. 6 is a schematic diagram illustrating regional histogramconstruction in accordance with an example embodiment.

FIGS. 7-10 are schematic block diagrams illustrating multi-histogramconstruction in accordance with example embodiments.

FIG. 11 is a schematic block diagram illustrating histogram comparisonfor neighboring regions in accordance with an example embodiment.

FIG. 12 is a series of tables illustrating an approach for reducingquantization impact in accordance with an example embodiment.

DETAILED DESCRIPTION

The present disclosure is provided with reference to the accompanyingdrawings, in which example embodiments are shown. However, otherembodiments may be used in different applications, and this disclosureshould accordingly not be construed as limited to the particularembodiments set forth herein. Rather, these embodiments are provided byway of example so that this disclosure will be thorough and complete.Like numbers refer to like elements throughout.

Referring initially to FIG. 1, an electronic device 30 illustrativelyincludes a housing 31, a finger biometric sensor 32 carried by thehousing, and a processor 33 also carried by the housing and cooperatingwith the finger biometric sensor. In the illustrated example, theelectronic device 30 is a mobile communications device which includes awireless transceiver 34 carried by the housing 31, such as a cellular orwireless local area network (WLAN) receiver, for example, although otherwireless communication formats may also be used. By way of example, theprocessor 33 may be implemented using a combination of hardware (e.g.,microprocessor, etc.) and a non-transitory computer-readable mediumhaving computer-executable instructions for performing the variousoperations described herein. It should be noted that the variouscomponents of the finger biometric sensor 32 described herein may beimplemented as a stand-alone electronic device (e.g., a finger biometricchipset), or some of the operations may be performed by shared resourcesof the electronic device 30 (e.g., a device microprocessor, etc.).

Example mobile communications devices may include telephones, smartphones, laptop computers, tablet computers, personal digital assistants(PDAs), digital cameras, gaming devices, digital display devices, etc.However, it should be noted that in some embodiments the fingerbiometric sensor 32 and processor 33 may be implemented in other typesof electronic devices, such as desktop computers, security terminals orstations for providing access to a restricted area, etc. The electronicdevice 30 further illustratively includes a memory 35 which may be usedfor storing information, such as enrollment finger data, for example.

Referring now additionally to the flow diagram 40 of FIG. 2 and also toFIG. 5, beginning at Block 41, the processor 33 may be capable ofdetermining enrollment finger ridge flow angles 50 over an enrollmentarea 51 for an enrolled finger 52, at Block 42. This is also representedby the ridge flow (RF) histogram construction operation at Block 53 inFIG. 5. The method further illustratively includes determining matchfinger ridge flow angles 60 over a match area 61 for a to-be matchedfinger 62, at Block 43. This is also represented by the RF histogramconstruction operation at Block 63. Further details on ridge flowmapping may be found in U.S. Pat. No. 7,599,530 to Boshra, which ishereby incorporated herein in its entirety by reference. Moreover, itshould be noted that, as used herein, “ridge flow angle” is meant toinclude either ridge orientation (i.e., in a direction parallel to theridge) ridge normal (i.e., in a direction perpendicular to the ridge),or any angle that is a function of ridge orientation.

The processor 33 determines one or more likely match sub-areas of theenrollment area by dividing the enrollment area into a plurality ofregions 54 and determining a respective enrollment ridge flow histogramfor each region of the enrollment area, and determining whether theto-be matched finger 62 matches the enrolled finger 52 based upon the atleast one likely match sub-area, at Block 44. It should be noted thatthe above-noted steps may be performed in different orders. For example,histograms for the enrollment data may be generated before match ridgeflow data is collected. Moreover, not all of the available enrollmentarea (or match area) has to be considered. That is, reference todetermining an enrollment ridge flow histogram for “each region” of theenrollment area (or match area) herein may pertain to a subset of all ofthe available regions within a given enrollment (or match) area.

The significance of dividing the enrollment area into the smallerregions 54 will be understood with reference to FIGS. 3 and 4, in whicha corresponding histogram is prepared for an overall enrollment area 72(FIG. 3), and then for nine smaller sub-divided regions 73 a-73 i of theoverall enrollment area. The histogram for the overall enrollment area72 may be considered a global histogram since it covers the entire area,However, such a global histogram may potentially lose valuablepositional information regarding the location of ridge flow datatherein. In the illustrated example, the ridge flow histograms haveeight bins (Bins 0-7), although different numbers of bins may be used indifferent embodiments, as will be discussed further below.

On the other hand, such positional information may be more accuratelycaptured through the use of multiple separate histograms for each of thesub-divided regions 73 a-73 i. In the illustrated example, histogramsfor the regions 73 c and 73 h are shown. Generally speaking, the morethe overall enrollment area 72 is subdivided, the more accurate thecapture of positional information will be. However, this will come withan associated cost in terms of processing, and thus a balance betweenaccuracy and speed may change for different implementations, as will beappreciated by those skilled in the art.

The processor 33 may determine the likely match sub-area(s) by dividingthe match area 61 into a plurality of regions 64, and determining arespective match ridge flow histogram for each region of the match area.In particular, the processor 33 may determine the likely match sub-areasby comparing enrollment ridge flow histograms for the enrollment regions54 with match ridge flow histograms for the match regions 64. In someembodiments, the processor 33 may be capable of dividing the enrollmentarea into a plurality of at least partially overlapping regions, as willbe discussed further below.

Also, the processor 33 may be capable of determining the at least onelikely match sub-area by at least generating a score based uponcomparing the plurality of enrollment ridge flow histograms with theplurality of match ridge flow histograms, and comparing the score to athreshold, as will be discussed further below. This may be considered tobe a coarse matching that is performed to determine candidate enrollmentregions 54 for all finger enrollment templates, which are ranked usingassociated scores, as indicated at Block 67.

The processor 33 may be capable of determining whether the to-be matchedfinger 62 matches the enrolled finger 52 based upon comparing the matchfinger ridge flow angles 60 to enrolled finger ridge flow angles 50 forthe likely match sub-area(s), at Block 45. For example, a percentage ofthe top candidate regions 54 (based upon their respective scores) may beexamined to determine whether the to-be matched finger matches theseregions. By way of example, the top ten percent may be selected as thetop candidate regions 54, although other percentages (or a fixed numberof regions) may be used. In this way, the initial coarse matchingeliminates 90% of the enrollment regions 54 that would otherwise have tobe checked during the “fine” matching operation. It should be noted thatthis example if for 1:1 matching, but in other embodiments 1:Manymatching may be used as well.

If the final match is a success, then a given action or operation may beperformed by the electronic device (e.g., verification, etc.), at Block46. Otherwise, the requested action may be denied, at Block 47, whichillustratively concludes the method of FIG. 2 (Block 48).

An example approach for histogram construction is now described withreference to FIG. 6. In the illustrated example, an enrollment area 92is subdivided into a plurality of regions 93 a-93 i. Ridge flow linesare assigned a given angle from among a range of 256 angles (i.e., wherethe 256 angles are a quantization of the angle range [0,180]), althoughother ranges of angles may be used in different embodiments. In thepresent example, an angle=0 is reserved for bad or faulty angles,although this need not be done in other embodiments. A histogramquantization delta is equal to sixteen, and thus a number of bins foreach histogram will be equal to 256/16, or 16.

During construction of the histograms, a ridge flow map for theenrollment area may be tessellated into the plurality of N×N regions 93a-93 i, and a separate histogram may be constructed for each region.Here again, the value of N is adjustable, and the value selected willresult in a tradeoff between accuracy and speed, as discussed above.Redundant histograms may be added to enrollment data to better handlerelative movement between regions. More particularly, in the example ofFIG. 7, enrollment regions 103 are compared with match regions 113 toprovide an overall overlap of 75% and a maximum histogram overlap of50%. When combined with a redundant region 115 defining a histogramcentralized between the overlapping enrollment regions 103 and matchregion 113, this still provides an overall overlap of 75%, but now witha maximum histogram overlap of 100%, as will be appreciated by theskilled artisan.

Various redundancy schemes are shown in FIGS. 8-10. By way ofcomparison, the enrollment area 122 in FIG. 8 is a zero-neighbor (noredundancy) scheme. The scheme illustrated in FIG. 9 is a four-neighborscheme, in which the regions of the enrollment area 132 and the matcharea 142 are shifted up and down by one-half of a region relative to oneanother in (a), and then side-to-side in (b). In FIG. 10, aneight-neighbor scheme, in which diagonal shifting (again by one-halfregion increments) between the enrollment area 152 and match area 162 isperformed in addition to the up/down and side-to-side shift illustratedin FIG. 9. Other schemes with different numbers of neighbors or shiftingincrements may also be used in different embodiments.

An example histogram comparison approach which may be used is nowdescribed further with reference to FIG. 11. Histograms for enrollmentregions 173 a-173 d of an enrollment area 172 are compared at differentrotations with histograms for match regions 183 a-183 d of a match area182. That is, the processor 33 compares the plurality of enrollmentridge flow histograms with the plurality of match ridge flow histogramsat a plurality of relative rotational angles by comparing histograms forthe enrollment regions 173 a-173 d with adjacent match regions 183 a-183d, and not just a directly overlapping region. Thus, in the illustratedexample, the histogram for enrollment region 173 b is not only comparedwith the histogram for region 183 b, but also with histograms forenrollment regions 183 a, 183 c, and 183 d, which represents atranslational and potentially rotational variation in the match area 182with respect to the enrollment area 172, as will be appreciated by thoseskilled in the art.

Each comparison generates a similarity score corresponding to a rigidtransformation (including rotational as well as horizontal and verticaltranslations). The similarity scores may be accumulated in a “3D” scoreor transformation space, in which the highest scores will correspondwith the likely alignment (and, thus, the likely match sub-areas). Moreparticularly, the alignment region may be obtained by analyzingneighboring scores, and more than one alignment region may be generatedif desired. That is, the top ranking score may not necessarily be thecorrect one, and thus it may be desirable to look to a plurality of thetop scores, as noted above.

An example similarity criterion will now be presented. Let A and B bethe two histograms to be compared. Thus, a similarityscore=U(A)+U(B)−K*Dis(A,B), where U(X) is a measure of uniqueness ofhistogram X, Dis(A,B) is distance measure between A and B, and K is andempirically-determined constant. The term U(X) is determined from adistribution of histogram entropy P(E), where U(X)=−log(P(Entropy(X))).This provides more weight to histograms of unique shape than those ofcommon shapes. With regard to the term Dis(A,B), this is the sum ofabsolute differences between A and B, i.e., Dis(A,B)=∥A−B∥.

Another example similarity criterion is based on a likelihood ratio. Forexample, let P_(S)(x) and P_(D)(x) be the distributions of Dis(A,B) forthe following two cases (respectively): A and B belong to the samefingerprint area; and A and B belong to different fingerprint areas. Inthis case, the similarly score=log(P_(S)(D))−log(P_(d)(D)), whereD=Dis(A,B).

Referring now additionally to FIG. 12, an optional approach for reducingthe potential quantization impact in the match process is now described.More particularly, quantization effects may be reduced by implementingthe following algorithm:

1. Delete matching angles at optimal rotation β;

2. Match residual histograms at β−Δ and β+Δ; and

3. Update original score using a best residual score

In the example of FIG. 12, in a first instance (a) a number of matchingangles between the enroll and match bins is six (i.e., the six anglesrecorded in Bin 1 of the match histogram overlap with 6 of the 10 anglesrecorded in Bin 1 of the enrollment histogram). In the second instance(b), the matching angles are deleted or removed from Bin 1 of the matchhistogram as per step 1 above. In the third instance (c), a match ofresidual histograms at β−Δ is found to be zero (i.e., the value “4” inenrollment histogram Bin 1 is shifted to Bin 0 and compared with matchBin 0). Similarly, at the fourth instance (d), a match of residualhistograms at β+Δ, which is found to be four (i.e., the value “4” inenrollment histogram Bin 1 is shifted to Bin 2 and compared with matchBin 0). As such, the adjusted number of matching angles=6+K*4, where Kis between 0 and 1 (k=0.5 in the example implementation). Moreparticularly, K may be considered as a weight value representinguncertainty, which may be used to help performance, as will beappreciated by those skilled in the art.

Various techniques may optionally be used to speed up the coarsematching process. For example, a match exclusion may be used in anentropy difference is too large. That is, if there is a largedifferential between the values in bins to be compared, then thosecomparisons may be skipped to expedite the process. Moreover, matchexclusion may also be appropriate if a corresponding score in the scorespace is too low. In addition, the processor 33 may “zoom” in onpromising rotations by using a range of histogram angles, for example.

Pseudo-code for implementation of the above-described approach is setforth below, which uses the following definitions:

-   -   Loc(X)=location of histogram X in ridge-flow map    -   Entropy(X)=entropy of histogram X    -   Range(X)=range of angles in histogram X    -   Space=3D score space    -   BadScore=some negative score    -   Score(A,B,r)=similarity score of A and B at relative rotation r        The pseudo-code is as follows:

1. Initialize score space to zeros 2. for every enroll histogram, A, do  for every match histogram, B, do     for every possible rotation, r,do       T = rigid transformation obtained using         Loc(A) andLoc(B)       if (Space(T) <= BadScore)         do nothing       else        if |Entropy(A)−Entropy(B) | > some           threshold          add BadScore to Space(T)         else           if Range(A)and Range(B) do not           overlap             add BadScore toSpace(T)           else             add Score(A,B,r) to Space(T) 3. Findmaximum score and corresponding T in score space

Many modifications and other embodiments will come to the mind of oneskilled in the art having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it isunderstood that various modifications and embodiments are intended to beincluded within the scope of the appended claims.

That which is claimed is:
 1. An electronic device comprising: a fingerbiometric sensor; and a processor cooperating with said finger biometricsensor and capable of determining enrollment finger ridge flow anglesover an enrollment area for an enrolled finger, determining match fingerridge flow angles over a match area for a to-be matched finger,determining at least one likely match sub-area of the enrollment area bydividing the enrollment area into a plurality of regions and determininga respective enrollment ridge flow histogram for each region of theenrollment area, and determining whether the to-be matched fingermatches the enrolled finger based upon the at least one likely matchsub-area.
 2. The electronic device of claim 1 wherein said processor iscapable of determining whether the to-be matched finger matches theenrolled finger based upon comparing match finger ridge flow angles toenrolled finger ridge flow angles for the at least one likely matchsub-area.
 3. The electronic device of claim 1 wherein said processor iscapable of dividing the enrollment area into a plurality of at leastpartially overlapping regions.
 4. The electronic device of claim 1wherein said processor is capable of determining the at least one likelymatch sub-area by at least: dividing the match area into a plurality ofregions; and determining a respective match ridge flow histogram foreach region of the match area.
 5. The electronic device of claim 4wherein said processor is capable of determining the at least one likelymatch sub-area by at least comparing a plurality of enrollment ridgeflow histograms with a plurality of match ridge flow histograms.
 6. Theelectronic device of claim 5 wherein said processor is capable ofdetermining the at least one likely match sub-area by at least comparingthe plurality of enrollment ridge flow histograms with the plurality ofmatch ridge flow histograms at a plurality of relative rotationalangles.
 7. The electronic device of claim 5 wherein said processor iscapable of determining the at least one likely match sub-area by atleast generating a score based upon comparing the plurality ofenrollment ridge flow histograms with the plurality of match ridge flowhistograms, and comparing the score to a threshold.
 8. The electronicdevice of claim 1 wherein the match area is smaller than the enrollmentarea.
 9. The electronic device of claim 1 further comprising a memorycoupled to said processor and capable of storing the enrollment fingerridge flow angles.
 10. The electronic device of claim 1 furthercomprising: a housing carrying said finger biometric sensor and saidprocessor; and a wireless transceiver carried by said housing.
 11. Anelectronic device comprising: a finger biometric sensor; a memorycapable of storing enrollment finger ridge flow angles over anenrollment area for an enrolled finger; and a processor cooperating withsaid finger biometric sensor and said memory and capable of determiningmatch finger ridge flow angles over a match area for a to-be matchedfinger, determining at least one likely match sub-area of the enrollmentarea by dividing the enrollment area into a plurality of regions anddetermining a respective enrollment ridge flow histogram for each regionof the enrollment area, and determining whether the to-be matched fingermatches the enrolled finger based upon the at least one likely matchsub-area.
 12. The electronic device of claim 11 wherein said processoris capable of determining whether the to-be matched finger matches theenrolled finger based upon comparing match finger ridge flow angles toenrolled finger ridge flow angles for the at least one likely matchsub-area.
 13. The electronic device of claim 11 wherein said processoris capable of dividing the enrollment area into a plurality of at leastpartially overlapping regions.
 14. The electronic device of claim 11wherein said processor is capable of determining the at least one likelymatch sub-area by at least: dividing the match area into a plurality ofregions; and determining a respective match ridge flow histogram foreach region of the match area.
 15. The electronic device of claim 14wherein said processor is capable of determining the at least one likelymatch sub-area by at least comparing a plurality of enrollment ridgeflow histograms with a plurality of match ridge flow histograms.
 16. Theelectronic device of claim 15 wherein said processor is capable ofdetermining the at least one likely match sub-area by at least comparingthe plurality of enrollment ridge flow histograms with the plurality ofmatch ridge flow histograms at a plurality of relative rotationalangles.
 17. The electronic device of claim 15 wherein said processor iscapable of determining the at least one likely match sub-area by atleast generating a score based upon comparing the plurality ofenrollment ridge flow histograms with the plurality of match ridge flowhistograms, and comparing the score to a threshold.
 18. A fingermatching method comprising: determining enrollment finger ridge flowangles over an enrollment area for an enrolled finger; determining matchfinger ridge flow angles over a match area for a to-be matched fingerusing a finger biometric sensor; determining at least one likely matchsub-area of the enrollment area by dividing the enrollment area into aplurality of regions and determining a respective enrollment ridge flowhistogram for each region of the enrollment area; and determiningwhether the to-be matched finger matches the enrolled finger based uponthe at least one likely match sub-area.
 19. The method of claim 18wherein determining whether the to-be matched finger matches theenrolled finger comprises determining whether the to-be matched fingermatches the enrolled finger based upon comparing match finger ridge flowangles to enrolled finger ridge flow angles for the at least one likelymatch sub-area.
 20. The method of claim 18 wherein determining the atleast one likely match sub-area comprises determining the at least onelikely match sub-area by at least: dividing the match area into aplurality of regions; and determining a respective match ridge flowhistogram for each region of the match area.
 21. The method of claim 18wherein determining the at least one likely match sub-area comprisesdetermining the at least one likely match sub-area by at least comparinga plurality of enrollment ridge flow histograms with a plurality ofmatch ridge flow histograms.
 22. The method of claim 21 whereindetermining the at least one likely match sub-area comprises determiningthe at least one likely match sub-area by at least comparing theplurality of enrollment ridge flow histograms with the plurality ofmatch ridge flow histograms at a plurality of relative rotationalangles.
 23. The method of claim 21 wherein determining the at least onelikely match sub-area comprises determining the at least one likelymatch sub-area by at least generating a score based upon comparing theplurality of enrollment ridge flow histograms with the plurality ofmatch ridge flow histograms, and comparing the score to a threshold. 24.A non-transitory computer-readable medium having computer-executableinstructions for causing a computer to perform steps comprising:determining enrollment finger ridge flow angles over an enrollment areafor an enrolled finger; determining match finger ridge flow angles overa match area for a to-be matched finger based upon a finger biometricsensor; determining at least one likely match sub-area of the enrollmentarea by dividing the enrollment area into a plurality of regions anddetermining a respective enrollment ridge flow histogram for each regionof the enrollment area; and determining whether the to-be matched fingermatches the enrolled finger based upon the at least one likely matchsub-area.
 25. The non-transitory computer-readable medium of claim 24wherein determining whether the to-be matched finger matches theenrolled finger comprises determining whether the to-be matched fingermatches the enrolled finger based upon comparing match finger ridge flowangles to enrolled finger ridge flow angles for the at least one likelymatch sub-area.
 26. The non-transitory computer-readable medium of claim24 wherein determining the at least one likely match sub-area comprisesdetermining the at least one likely match sub-area by at least: dividingthe match area into a plurality of regions; and determining a respectivematch ridge flow histogram for each region of the match area.
 27. Thenon-transitory computer-readable medium of claim 24 wherein determiningthe at least one likely match sub-area comprises determining the atleast one likely match sub-area by at least comparing a plurality ofenrollment ridge flow histograms with a plurality of match ridge flowhistograms.